A Multi-Threads Runtime for the Pandore Data-Parallel Compiler
نویسندگان
چکیده
This paper presents an environment for programming distributed memory computers using a language such as High Performance Fortran. Emphasis is put on compilation techniques for parallel loops and on the associated runtime support. A multi-threads scheme has been deened and implemented in order to eeciently overlap the communication and the computation phases. Un ex ecutif utilisant les processus l egers pour le compilateur Pandore R esum e : Cet article pr esente un environnement de programmation pour les calculateurs parall eles a m emoire distribu ee. Le langage source est du type High Performance Fortran et la compilation est dirig ee par la distribution des donn ees. L'accent est mis sur les techniques d'optimisation des boucles parall eles, a la compilation et a l'ex ecution. Un sch ema d'ex ecu-tion mettant en uvre plusieurs processus l egers a et e conn cu de faa con a pouvoir recouvrir eecacement les communications par des phases de calcul.
منابع مشابه
The Pandore data-parallel compiler and its portable runtime
The difficulty of p rogramming massively parallel architectures with distributed memory is a severe impediment to the use of these parallel machines. In the past few years, we have witnessed a substantial effort on the part of researchers to define parallel p rogramming paradigms adapted to Distributed Memory Parallel Computers (DMPCs). Among then J, the Data Parallel model is an interesting ap...
متن کاملAData ow-basedMassivelyParallelProgrammingLanguage "V" and Its Implementation on A Stock Parallel Machine
We propose a data BLOCKINow-based massively parallel programming language, called \V," which would minimize the diculties in writing massively parallel programs. The language V has both merits of functional programming and object-based programming. Our starting point is a data BLOCKINow-based functional programming language, called \Valid," which we have developed so far, because functional pro...
متن کاملA Multithreaded Runtime System With Thread Migration for Distributed Memory Parallel Computing
Multithreading is very effective at tolerating the latency of remote memory accesses in distributed memory parallel computers, but does nothing to reduce the number or cost of those memory accesses. Compiler techniques and runtime approaches, such as caching remote memory accesses and prefetching, are often used to reduce the number of remote memory accesses. Another approach to reduce the numb...
متن کاملThe Dude Runtime System: an Object-oriented Macro-dataaow Approach to Integrated Task and Object Parallelism University of Colorado at Boulder the Dude Runtime System: an Object-oriented Macro-dataaow Approach to Integrated Task and Object Parallelism
Modern parallel programming languages allow programmers to specify parallelism using implicitly parallel constructs such as data parallel or object parallel methods, and explicitly parallel constructs, such as doall, doacross, parallel section or programmer-level threads. In this paper, we present the design of a runtime system that executes data-parallel (or object-parallel) code in the presen...
متن کاملManaging the Overall Balance of Operating System Threads on a Multiprocessor Using Automatic Self-Allocating Threads (ASAT)
A multi-threaded runtime environment which supports lightweight threads can be used to support many aspects of parallel processing including: virtual processors, concurrent objects, and compiler run-time environments. This work focuses on the area of compiler run-time environments. Such a library must depend on the underlying thread mechanism provided by the operating system. Threads working on...
متن کامل